package n2253;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.text.DecimalFormat;
import java.util.StringTokenizer;

public class Main {

	
	
	static int N;
	
	static boolean visit[]=new boolean[201];
	static double dist[]=new double[201];
	
	static double result;
	
	static class Stone{
		int x,y;
	}
	
	static Stone[] stone=new Stone[201];
	
	static String prim()
	{
		for(int i=0;i<N;i++)
		{
			visit[i]=false;
			dist[i]=Integer.MAX_VALUE;
		}
		dist[0]=0;
		result=Integer.MIN_VALUE;
		for(int i=0;i<N;i++)
		{
			double min=Integer.MAX_VALUE;
			int pos=-1;
			
			for(int j=0;j<N;j++)
			{
				if(visit[j]==false&&min>dist[j])
				{
					min=dist[j];
					pos=j;
				}
			}
			visit[pos]=true;
			result=Math.max(min, result);
			if(pos==1) {
				return (new DecimalFormat("0.000").format(result));
			}
			for(int j=0;j<N;j++)
			{
				
				if(visit[j]==false)
				{
					double d=Math.sqrt((stone[pos].x-stone[j].x)*(stone[pos].x-stone[j].x)+(stone[pos].y-stone[j].y)*(stone[pos].y-stone[j].y));
					if(dist[j]>d)dist[j]=d;
				}
			}
		}
		
		return "-1";
		
	}
	
	
	/**
	 * @param args
	 */
	public static void main(String[] args)throws Exception {

		BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
		String line=null;
		int count=0;
		while((line=bf.readLine())!=null)
		{
			N=Integer.parseInt(line);
			if(N==0)break;
			for(int i=0;i<N;i++)
			{
				line=bf.readLine();
				StringTokenizer st=new StringTokenizer(line);
				int x=Integer.parseInt(st.nextToken());
				int y=Integer.parseInt(st.nextToken());
				stone[i]=new Stone();
				stone[i].x=x;
				stone[i].y=y;
			}
			System.out.println("Scenario #"+(++count)+"\nFrog Distance = "+prim());
			System.out.println();
			bf.readLine();
		}
	}

}
